package com.project.config;

import cn.hutool.json.JSONUtil;
import dev.langchain4j.model.chat.listener.ChatModelErrorContext;
import dev.langchain4j.model.chat.listener.ChatModelListener;
import dev.langchain4j.model.chat.listener.ChatModelRequestContext;
import dev.langchain4j.model.chat.listener.ChatModelResponseContext;
import lombok.extern.log4j.Log4j2;

/**
 * @Author: zhoujinchuan
 * @Description: （）
 * @Date: 2025/2/24 13:36
 */
@Log4j2
public class MyChatModelListener implements ChatModelListener {

    /**
     * 请求到达 LLM
     * @param requestContext
     */
    @Override
    public void onRequest(ChatModelRequestContext requestContext) {
//        log.error("请求");
//        requestContext.attributes().put("test","测试");
        log.error(JSONUtil.toJsonStr(requestContext));
    }

    /**
     * LLM 返回的响应
     * @param responseContext
     */
    @Override
    public void onResponse(ChatModelResponseContext responseContext) {
//        log.error("响应");
//        log.error(responseContext.attributes().get("test"));
    }

    /**
     * 错误处理
     * @param errorContext
     */
    @Override
    public void onError(ChatModelErrorContext errorContext) {
//        log.error("错误..");
    }
}
